export function unique (arr) {
  return Array.from(new Set(arr));
}

// 防抖
// 1. 模仿函数(输入函数 返回新函数)
// 2. 让fn在合适的时机执行
// 3. 彻底模仿fn(1. 模仿参数  2. 模仿this)
export function debounce (fn, delay) {
  let timer = null;

  return function (...args) {
    // this
    timer && clearTimeout(timer);
    timer = setTimeout(() => {
      fn.apply(this, args);
    }, delay);
  };
}
